feat(compute): delegate sandbox authentication to drivers - #2968
Conversation
72845bc to
1aa14c9
Compare
|
🌿 Preview your docs: https://nvidia-preview-pr-2968.docs.buildwithfern.com/openshell |
Signed-off-by: Drew Newberry <385+drew@users.noreply.github.com>
Signed-off-by: Drew Newberry <385+drew@users.noreply.github.com>
1aa14c9 to
99956e3
Compare
|
review-github-pr with Sol. Mostly loss of test coverage and some docs updates that were missed. Potential Concerns
|
|
Label |
|
/ok to test 99956e3 |
Signed-off-by: Drew Newberry <385+drew@users.noreply.github.com>
|
Resolved in 94eaa7c. I restored direct gateway compute-driver authenticator coverage for success, path scoping, missing credentials, empty identities, and driver error propagation; restored Kubernetes TokenReview audience, pod binding, all namespace modes, pod UID/annotation, and controlling Sandbox owner UID/ID validation coverage; updated the debug skill and auth/compute-driver docs to assign TokenReview to the Kubernetes driver and use openshell.ai/sandbox-id; and clarified that an external driver gateway table supplies socket_path while the external process receives its own backend settings through CLI/environment. The focused build also found and fixed the Docker tracing wrapper missing AuthenticateSandbox delegation. The stack PR #2823 has been rebased onto this new base tip. |
|
/ok to test 94eaa7c |
Signed-off-by: Drew Newberry <385+drew@users.noreply.github.com>
|
/ok to test bf3b484 |
Summary
Delegate sandbox bootstrap credential authentication to the selected compute driver so in-process and external drivers share the same trust contract. Keep gateway authorization and JWT minting authoritative while moving Kubernetes-specific TokenReview policy behind the Kubernetes driver.
Related Issue
Related to #2417
This is the foundational PR for #2823; #2823 will be rebased on this branch.
Changes
AuthenticateSandboxcompute-driver RPC[openshell.drivers.kubernetes]Testing
mise run pre-commitpasses (format and Markdown passed; aggregate run was blocked by sandboxed sccache IPC, dependency downloads, and bundledbufexecution)Additional verification:
cargo check -p openshell-server -p openshell-driver-kubernetescargo check -p openshell-server --testscargo test -p openshell-driver-kubernetes token_review --libcargo clippy -p openshell-server -p openshell-driver-kubernetes --all-targets -- -D warningscargo fmt --all -- --checkgit diff --checkChecklist